A virtual machine includes a software-based emulation of a physical computer where the virtual machine executes programs like a physical machine. A characteristic of a virtual machine is that its software is limited to the resources and abstractions provided by the virtual machine, meaning that a virtual machine cannot escape the boundaries of its virtual environment. Virtual machines are classified into two different classifications: 1) a system virtual machine; or 2) a process virtual machine. A system virtual machine provides a complete system platform that supports the execution of an entire operating system and emulates an existing architecture. With a system virtual machine, multiple operating system environments can co-exist on a same computer in isolation from each other. A system virtual machine can provide an instruction set architecture that is different from that of the real machine. A process virtual machine supports a single process and is typically portable and flexible. A process virtual machine runs as a normal application inside a host operating system and provides a platform-independent programming environment that allows a program to execute in a same manner on any platform.